Automated program recording

ABSTRACT

A method and system of providing access to television programs without requiring a user to operate an electronic programming guide or to independently determine information required to access the television program. Optionally, access to the television program may be facilitated by scheduling a recording of the televisions program or providing instructions to facilitate accessing an on-demand showing of the television program.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No. 12/493,483 filed Jun. 29, 2009, the benefit and disclosure of which is incorporated in its entirety by reference herein.

TECHNICAL FIELD

The present invention relates to automated program recording of the type wherein scheduling instructions are relied upon by a recording device to schedule a future program recording.

BACKGROUND

Digital video recorders (DVRs) are one type of personal video recorder (PVR) commonly used to record programs. An electronic programming guide (EPG) or other application, operating either on the DVR or another device, such as a settop box (STB), can be used to facilitate scheduling DVR recordings. The guides include navigable user interfaces, typically partitioned into a grid arrangement where each program is identified according to time and channel. A user can search through the interfaces to find a program of interest, and if necessary, select an option to record the program.

The guide includes recording information necessary for the DVR to schedule a recording of the selected program, such as the channel showing the program and the time period for which the channel is to be recorded. The guides have a limited date range of information in that they are unable to identify programs occurring beyond some point in the future, typically a couple of weeks. This can be problematic if a user desires to record a program that is not included within the guide, such as a new program that is not currently scheduled into the guide.

Some guides include a user directed option where the user is able to manually schedule a recording of the program by entering the necessary recording information. This process, however, requires the user to execute a number of operations and to have knowledge of the time period and channel to be recorded. If the time period and channel of the program is not known to the user or is not yet scheduled by a service provider for broadcast, the user is unable to manually schedule the recording.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is pointed out with particularity in the appended claims. However, other features of the present invention will become more apparent and the present invention will be best understood by referring to the following detailed description in conjunction with the accompany drawings in which:

FIG. 1 illustrates a system for supporting automated recording in accordance with one non-limiting aspect of the present invention; and

FIG. 2 illustrates a flowchart of a method of automated program recording in accordance with one non-limiting aspect of the present invention.

DETAILED DESCRIPTION

As required, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied in various and alternative forms. The figures are not necessarily to scale; some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the present invention.

FIG. 1 illustrates a system 10 for supporting automated recording in accordance with one non-limiting aspect of the present invention. The system 10 is shown for exemplary purpose as being adapted for use in a television environment where a service provider 12 electronically delivers television signals to a subscriber 14 over a network 16. The subscriber 16 may include a recorder 18 and output device 20 to facilitate processing and recording of the television signals.

The system 10 is predominately described with respect to the service provider utilizing the television signal to support television program transmission, such as through linear and/or non-linear unicast and/or broadcast transmissions. The television signals may be descrambled or otherwise processed by the output device 20, such as but not limited to a settop box (STB), for output to a television or other display (not shown). The recorder 18 may be a digital video recorder (DVR) or other type of personal video recorder (PVR) having capabilities for recording the television signals for user-directed playback on the output device.

For exemplary purposes, the system 10 is described with respect to facilitating automated scheduling of programs to be recorded on the recorder 18. This is done for exemplary purposes only and without intending to limit the scope and contemplation of the present invention. The present invention fully contemplates facilitating automated scheduling for any type of recording, and not just television based program recording. Moreover, the present invention is not intended to be limited to recording locally on the recorder 18 and fully contemplates scheduling off-site or remote recordings at other locations. The playback of the scheduled recordings is not limited to playback on the local output device and may be coordinated and/or supported on a mobile phone or at another location besides that of subscriber.

The automated program recording contemplated by one non-limiting aspect of the present invention relies on data carried within a transport stream, such as but not limited to extended data service (XDS) data, segment identifiers used to individual identify the multiple segments comprising each program, such as those carried within a data layer of an MPEG transport stream, and other data available with Internet Protocol (IP) or other data packets having capabilities sufficient to facilitate transmission of the television programs. The data carried with the television program transmission may be considered to be in-band (IB) data in that it is carried along with the content of the television program when the program is transmitted from the service provider, as opposed to out-of-band (OOB) data which is transmitted separately from the content transmission. In this manner, one non-limiting aspect of the present invention may rely on IB data to facilitate scheduling the recorder.

The present invention contemplates scheduling the recording without relying on electronic programming guide (EPG) data or other data typically transmitted to the recorder 18 or output device 20 to support applications/guides and other user interactive features that users may navigate to locate available content. This allows the present invention to schedule recordings beyond the date range limits of EPG and DVR recording guides by including the recording information needed to schedule the recording within the television signal transmission and/or by including an identifier that can be used to request or look-up any additional information not carried within the television signal transmission that may be required by the recorder 18 to scheduled the recording.

The system 10 may include a recording scheduler 22 to facilitate generation of the scheduling information required by the recorder 18 to record a desired program. The scheduler 22 may operate in cooperation with the service provider to either provide the necessary data to the service provider to embed with transmission of the television programs and/or the scheduler 22 may be an entity separate from the service provider having capabilities sufficient to support embedding the data in accordance with the operations contemplated by the present invention. The scheduler 22 may include any information necessary for the recorder 18 to schedule a recording, such as but not limited to information on the channel assigned to carry the program, the duration for which the program is to be recorded, and in some case, the frequency at which the program is to be recorded (some programs may be repeatedly recorded, such as if the program relates to a television series.)

FIG. 2 illustrates a flowchart 40 of a method of automated program recording in accordance with one non-limiting aspect of the present invention. The method may be implemented with the assistance of a computer-readable medium and/or with the assistance of any number of logical processing elements used within any environment applicable to the present invention, such as with the assistance of the above described scheduler 22, output device 20, and/or recorder 18 operating in accordance with instructions stored on the computer-readable medium. Each of the operations described below need not necessarily be executed or executed in the described order as variations may be made in accordance with the scope and contemplation of the present invention.

Block 42 relates to determining a recording request. The recording request may be determined by a user pressing a record button included on a remote control for controlling the output device 20 and/or the recorder 18 or by responding to a prompt shown during viewing of a program, such as but not limited to a prompt that is triggered with a pop-up icon/advertisement and/or through interaction with a guide or other navigable user interface. The user may also initiate the recording request by calling the service provider, communication an email/text message, or taking other action not necessarily executed through interaction with the output device or recorder.

Block 44 relates to determining whether the recording request is for a current program. The current program can be classified as a program having recording information already available to the output device and/recorder through a guide application, such as an EPG or other the like. A request for the current program may correspond with recording requests made for programs having scheduling information that is already actively being transmitted through OOB messaging. One non-limiting aspect of the present invention contemplates triggering a recording without requiring the user to navigate an EPG or recording guide by simply pressing a record button on a remote control.

The program desired for recording may be inferred to be the currently tuned-to program or a program currently being output by the output device 20. Optionally, the inference of the program desired for recording need not necessary correspond with the currently tuned-to program. An assessment can be made of the content showing within the tuned-to program to facilitate identifying the program actually desired for recording. If a commercial is showing, for example, to advertise an upcoming program, such as for a program due out well out into the future (beyond the data range of the EPG or recorder guide), it may be inferred that the recording request is initiated for the advertised message and not the currently tuned-to program.

Optionally, during playback of the commercial or while another item of interest is being shown, a message may appear, such as a pop-up icon, to prompt the user with a recording requests. The icon may appear for a brief period of time, during which the user can request recording of the program shown in the icon by simply pressing an input of the remote control, after which the icon may automatically disappear. The icon may also be displayed until the user inputs a responsive reply either accepting or denying the recording.

The recording request is, therefore, analyzed with respect to the commercials and/or icons showing while the request is received and/or those that have recently been shown to assess whether the request relates to a currently tuned-to program, a program having locally available scheduling information, or an upcoming program. Block 46 is reached if the program relates to the currently tuned-to program or a program where the scheduling information needed by the recorder 18 is retrieved from an EPG guide, recorder guide, or other data already having the scheduling information required by the recorder 18 to schedule the desired recording. Once the necessary scheduling information is retrieved, it is transmitted or otherwise communicated in Block 48 to the record to schedule the recording.

If program request for recording is not for the currently tuned-to program or a program for which the related scheduling information is available locally in one of the guides, Block 50 is reached to identify the program desired for recording. This may include cross-reference the time of day or program elapse time corresponding with receipt of the recording request with the current tuned-to channel number to identify a commercial, icon, or other event showing proximate in time to the request. Data embedded within the currently tune-to program may also be used to facilitate identifying the program desired for recording. For example, a segment corresponding with an advertisement for the upcoming program may include data within a segment identifier that can be used as reference ID for the upcoming program.

If the program cannot be identified, Block 52 is reached to request the user to manual input scheduling information for the request recording, such as if there is insufficient data included within the tuned-to program to automatically identify the to be recorded program. This may require the user to have some knowledge of the channel being used to carry the program and time period during which the channel must be recorded in order to facilitate scheduling the recording in Block 48. If, however, there is sufficient data available to identify the program subject to the recording request, Block 54 is reached.

Block 54 determines whether the embedded data sufficient to schedule the recoding or whether additional scheduling data required. One non-limiting aspect of the present invention contemplates embedding all the scheduling information needed by the recorder 18 to schedule the recording within the IB data being transmitted with the currently tuned-to program. This may include embedding the data within a data layer of an MPEG transport stream used to transport the currently tuned to program such that it can be recovered by the output device or recorder 18 in Block 56 and transmitted to the recorder 18 in Block 18 to schedule the recording.

If the embedded data is unable to provide all the necessary scheduling information, Block 58 is reached and a request for the scheduling information is made by the output device 20 to the scheduler 22 and/or service provider 12 for the missing information. One non-limiting aspect of the present invention contemplates simply embedding a reference ID or other ID within the currently tuned-to program stream to identifying the program desired for recording. This ID can be recovered from the stream and transmitted to the scheduler 22 to identify the program. The scheduler 22 can cross-reference the reference ID with the stored scheduling information to identify the scheduling information required by the recorder 18. Optionally, different scheduling instructions may be stored for the same program depending on the scheduling demands/requirements of the recorder performing the recording.

The scheduler may communicate the scheduling information back to the output device 20 and/or directly to the recorder 18, either through IB or OOB messaging, to schedule the recording in Block 48. In this manner, Block 48 can be reached to schedule a future recording according to local scheduling information (Block 46), manually inputted scheduling information (Block 52), scheduling based on information embedded within the tuned-to program (Block 56), and/or scheduling information transmitted from the scheduler (Block 58). With respect to the last two options, the program scheduled for recording is automatically identified and the scheduling information is automatically retrieved while the user is tuned-to another program and watching a commercial or other event shown within that program.

As supported above, one non-limiting aspect of the present invention relates to a system to enable creation of a DVR program event based on a commercial, even when the DVR does not have any knowledge of the event (e.g., if the program is outside the boundary of the DVR's program guide) or to update a favorites file of a user profile to mark a program for future recording/access. This may include the described mechanism for scheduling the recording of an event based on a commercial, whether it falls inside our outside the program guide window.

When a commercial for a TV program is inserted into a broadcast stream, information about the program can be embedded in the stream (using eXtended Data Service—XDS—in the analog or digital stream). If a user sees the commercial and wants to watch the program, they can instruct the DVR to create a timer or reminder for that program. This timer or reminder can still be set up even if the program falls outside of the window of program guide information. At least three methods may be used to schedule the recoding:

1) Reliance on enough information about the program being embedded in the commercial. This may include embedding the date, time, channel, and number of programs (e.g., in the case of a special series). The DVR can read this information directly from the analog or digital stream, and set up a timer or reminder.

2) A unique identifier can be embedded in the commercial. This identifier can then be used by the DVR to look up the program information using an IP connection or some other mechanism for two-way communication between a server and the DVR. This identifier can be created using a unique number generator, a hash function, or some other mechanism that will ensure it is unique. Based on the information the DVR receives, it can then schedule a timer or reminder. This may help in the event a commercial is broadcast over satellite, over-the-air, or cable. Because channel line-ups vary from one operator to the other, a single piece of information can be used by all DVRs regardless of the service provider.

3) A combination of #1 and #2—where the stream may contain some information, but perhaps not enough to properly schedule the recoding. In such an event, the DVR can still look up the information it needs to create a timer or reminder.

This system can solve the DVRs being restricted in their ability to respond to what users want to do, especially when those needs are based on shows they are watching. Adding the capabilities suggested by the present invention would make a DVR much easier to use, and may provide an incentive for users to watch commercials because they can easily spot shows they want to watch. It can also inform users if they don't have access to the TV station—providing the opportunity to upsell customers in the event they see programs they want to watch. If information can be embedded in the stream, then there is no need for additional equipment or signaling. It applies equally to broadcast, satellite or cable distribution of video programming.

As required, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied in various and alternative forms. The figures are not necessarily to scale, some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for the claims and/or as a representative basis for teaching one skilled in the art to variously employ the present invention.

While exemplary embodiments are described above, it is not intended that these embodiments describe all possible forms of the invention. Rather, the words used in the specification are words of description rather than limitation, and it is understood that various changes may be made without departing from the spirit and scope of the invention. Additionally, the features of various implementing embodiments may be combined to form further embodiments of the invention. 

What is claimed is:
 1. A method for scheduling a server to record a first media prior to a transmission of the first media from a source thereof, the method comprising: embedding recording instructions for the first media within a first media stream being used to stream a plurality of first Internet Protocol (IP) packets to a device to facilitate playback of a second media encoded therein, the recording instructions including an address needed to access the transmission and a time period needed for recording the transmission; and scheduling a recording of the first media at the server in response to receipt of a recording request from the device indicating a user thereof desires to record the first media, including recovering the recording instructions from the recording request and instructing the server to record the transmission according to the address and the time period specified therein.
 2. The method of claim 1 further comprising specifying with the address an IP address sufficient to access a unicast or multicast group associated with the transmission.
 3. The method of claim 1 further comprising specifying with the address a television channel sufficient to access signaling being used to broadcast the transmission.
 4. The method of claim 1 further comprising specifying with the time period a date and a length of time for the recording.
 5. The method of claim 1 further comprising transmitting on-demand a plurality of second IP packets encoded with the recording within a second media stream addressed to an IP address of the device to facilitate playback of the recording.
 6. The method of claim 5 further comprising: tuning to at the server a television channel used by the source to provide the transmission; generating the recording at the server from the television channel tuned to; and encoding the recording at the server into the plurality of second IP packets.
 7. A non-transitory computer-readable medium having a plurality of instructions executable with a processor to facilitate scheduling a recording at a server configured to provide on-demand streaming of Internet Protocol (IP) packets, the plurality of instructions being sufficient for: embedding recording instructions for recording a first media within a first media stream being used to stream a plurality of first IP packets to a device to facilitate playback of a second media encoded therein, the recording instructions being sufficient to identify an address needed to access a transmission of the first media and a time period for recording the transmission.
 8. The non-transitory computer-readable medium of claim 7 wherein the plurality of instructions are sufficient for embedding the recording instructions within the first media stream as part of a commercial associated with the second media.
 9. The non-transitory computer-readable medium of claim 8 wherein the plurality of instructions are sufficient for transmitting the first media stream to the device after the device begins playback of a third media such that the commercial appears as a pop-up-advertisement therein.
 10. The non-transitory computer-readable medium of claim 9 wherein the plurality of instructions are sufficient for instructing the device to transmit a recording request having the recording instructions to the server in response to user interaction with the device during playback of the commercial.
 11. The non-transitory computer-readable medium of claim 10 wherein the plurality of instructions are sufficient for scheduling a recording of the first media at the server in response to receipt of the recording request such that the recording corresponds with the server recording the transmission according to the address and the time period specified in the recording instructions included with the recording request.
 12. The non-transitory computer-readable medium of claim 11 wherein the plurality of instructions are sufficient for specifying with the address an IP address sufficient to request a unicast delivery of the transmission from the source to the server.
 13. The non-transitory computer-readable medium of claim 11 wherein the plurality of instructions are sufficient for specifying with the address a television channel being used to facilitate the transmission.
 14. The non-transitory computer-readable medium of claim 11 wherein the plurality of instructions are sufficient for specifying with the time period a date and a length of time for the recording.
 15. The non-transitory computer-readable medium of claim 11 wherein the plurality of instructions are sufficient for transmitting on-demand a plurality of second IP packets encoded with the recording within a second media stream addressed to an IP address of the device to facilitate playback of the recording.
 16. A non-transitory computer-readable medium having a plurality of instructions executable with a processor to facilitate Internet-based transmission of a television program recorded at a server, the plurality of instructions being sufficient for: in advance of a transmission of the television program from a source associated therewith, embedding recording instructions within signaling being used to stream a plurality of first Internet protocol (IP) packets to a device to facilitate playback of another television program or to facilitate display of a pop-up advertisement during playback of the another television program, the recording instructions being sufficient to identify an address needed to access the transmission and a time period for recording the transmission; receiving a recording request from the device indicating a user thereof desires to record the television program, the recording request including the recording instructions embedded within the signaling; and scheduling a recording at a server in response to receipt of the recording request, including recovering the recording instructions from the recording request and instructing the server to record the transmission according to the address and the time period specified therein.
 17. The non-transitory computer-readable medium of claim 16 wherein the plurality of instructions are sufficient for transmitting on-demand a plurality of second IP packets encoded with the recording from the server to the device over the Internet.
 18. The non-transitory computer-readable medium of claim 17 wherein the plurality of instructions are sufficient for specifying with the address a television channel being used to broadcast the transmission.
 19. The non-transitory computer-readable medium of claim 17 wherein the plurality of instructions are sufficient for specifying with the time period a date and a length of time for the recording. 